技术债

在技术层面,由于种种原因, 选择了不太合适的底层架构,或者技术实现,总之跟理想的情况的一种妥协,或者不理想的应付. 统称技术债。

例如,为了赶进度,项目中使用了大量的复制粘贴, 这个就是技术债。

技术债的后果

  1. 让大家产生厌烦情绪, 时间一长就会离职,
  2. 离职的人多了,特别和核心成员离职的话,项目就死掉了

其实技术债是特别好识别的。当小组中的每个人都觉得工作难做,代码难写,BUG难改的时候,就一定出了问题。

错误的底层架构

例如:在一个电商项目中,很多地方需要用到搜索和索引。如果当初并没有使用全文检索的话,就会出问题。 例如系统中本应该使用 elastic search作为搜索引擎,却没有用。

再如:一个使用多线程编程语言才能处理好的事情,却要用单线程的语言去实现。例如:股票市场中的撮合交易,使用Go/Erlang这样的语言可以更好的处理。

错误的技术实现

例如:在某个项目中,需要Android, IOS两个移动端。

最开始项目为了追求速度,使用了ReactNative作为开发语言。结果到后期,发现各种“原生定制化”的需求越来越多, 很多需求是无法通过ReactNative来实现的。

解决方案

基本上都是推倒重来。这个目标必须由团队负责人发起,并承担责任。

  1. 向上级汇报问题,请求项目暂时一段时间
  2. 在团队内部开诚布公的提出问题所在,指出问题根源
  3. 找到熟悉该项目全部流程的人员。他是保证重构或者重写可以顺利进行的重要因素
  4. 开始重写。最好是一点儿一点儿的来。把影响降低到最小。

这里需要提出的是,技术债往往是由于架构师/CTO的失误造成的,另外,老板,在绝大部分情况下,是不懂技术的,所以很可能不会支持大家重写代码,让项目的进度暂停, 所以,这里需要项目的负责人,做一些比较灵活的处理.

results matching ""

    No results matching ""